package config

import (
	"gorm.io/driver/mysql"
	"gorm.io/gorm"
)

var DB *gorm.DB

// InitDB 初始化数据库连接并执行表迁移
func InitDB() error {
	// 数据库连接信息
	dsn := "root:Da112871@tcp(47.113.101.61:3306)/task_scheduler?charset=utf8mb4&parseTime=True&loc=Local"
	
	// 声明err变量（解决undefined: err错误）
	var err error
	DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{})
	if err != nil {
		return err // 连接失败时返回错误
	}
	return nil
}

// CloseDB 关闭数据库连接
func CloseDB() {
	sqlDB, err := DB.DB()
	if err != nil {
		panic("关闭数据库连接失败: " + err.Error())
	}
	sqlDB.Close()
}